import asyncio
import websockets

# 定义客户端列表
clients = []
# 定义WebSocket接收消息的处理函数
async def websocket_handler(websocket, path):
    # 将新连接的客户端添加到客户端列表
    clients.append(websocket)
    try:
        while True:
            message = await websocket.recv()
            print(f'接收到来自客户端的消息: {message}')

            # 在这里可以对接收到的消息进行处理

            # 将消息发送给其他客户端
            for client in clients:
                if client != websocket:
                    await client.send(message)
    except websockets.exceptions.ConnectionClosedOK:
        print('WebSocket连接已关闭')
        # 在这里可以处理客户端关闭的情况
        clients.remove(websocket)

# 启动WebSocket服务器
start_server = websockets.serve(websocket_handler, 'localhost', 7788)

# 运行事件循环
asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()